﻿using System;
namespace Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik {
    
    
    public partial class AvalikustamiseRekvisiidid : global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.Ymbrik, global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IAvalikustamiseRekvisiidid {
        
        private System.Int64? @__avalikustamiseMargeKL;
        
        private string @__markused;
        
        private global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IFail @__fail;
        
        private System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IETHoiatus> @__hoiatused = new System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IETHoiatus>();
        
        public AvalikustamiseRekvisiidid() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public AvalikustamiseRekvisiidid(System.Int64? @avalikustamiseMargeKL, string @markused, global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IFail @fail, System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IETHoiatus> @hoiatused, System.Int64? @objektID, System.DateTime? @algusKP, System.DateTime? @loppKP, System.DateTime? @saabumiseKP, System.DateTime? @postitamiseKP, global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IToiming @toiming, string @klientsysteemiID) : 
                base(@objektID, @algusKP, @loppKP, @saabumiseKP, @postitamiseKP, @toiming, @klientsysteemiID) {
            this.@__avalikustamiseMargeKL = @avalikustamiseMargeKL;
            this.@__markused = @markused;
            this.@__fail = @fail;
            this.@__hoiatused = @hoiatused;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected AvalikustamiseRekvisiidid(IAvalikustamiseRekvisiidid @avalikustamiseRekvisiidid) : 
                base(@avalikustamiseRekvisiidid.ObjektID, @avalikustamiseRekvisiidid.AlgusKP, @avalikustamiseRekvisiidid.LoppKP, @avalikustamiseRekvisiidid.SaabumiseKP, @avalikustamiseRekvisiidid.PostitamiseKP, @avalikustamiseRekvisiidid.Toiming, @avalikustamiseRekvisiidid.KlientsysteemiID) {
            this.@__avalikustamiseMargeKL = @avalikustamiseRekvisiidid.AvalikustamiseMargeKL;
            this.@__markused = @avalikustamiseRekvisiidid.Markused;
            this.@__fail = @avalikustamiseRekvisiidid.Fail;
            this.@__hoiatused = @avalikustamiseRekvisiidid.Hoiatused;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        public AvalikustamiseRekvisiidid(IYmbrik @ymbrik) : 
                base(@ymbrik) {
        }
        
        public virtual System.Int64? AvalikustamiseMargeKL {
            get {
                return this.@__avalikustamiseMargeKL;
            }
            set {
                this.@__avalikustamiseMargeKL = value;
            }
        }
        
        public virtual string Markused {
            get {
                return this.@__markused;
            }
            set {
                this.@__markused = value;
            }
        }
        
        public virtual global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IFail Fail {
            get {
                return this.@__fail;
            }
            set {
                this.@__fail = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IETHoiatus> Hoiatused {
            get {
                return this.@__hoiatused;
            }
            set {
                this.@__hoiatused = value;
            }
        }
    }
}
